package com.ruoyi.supermarket.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.supermarket.bo.SaleCountBo;
import com.ruoyi.supermarket.bo.SupplyAndDemandBO;
import com.ruoyi.supermarket.domain.Commodity;

/**
 * 商品信息Service接口
 * 
 * @author lxl
 * @date 2024-07-21
 */
public interface ICommodityService 
{
    /**
     * 查询商品信息
     * 
     * @param cid 商品信息主键
     * @return 商品信息
     */
    public Commodity selectCommodityByCid(Long cid);

    /**
     * 查询商品信息列表
     * 
     * @param commodity 商品信息
     * @return 商品信息集合
     */
    public List<Commodity> selectCommodityList(Commodity commodity);

    /**
     * 新增商品信息
     * 
     * @param commodity 商品信息
     * @return 结果
     */
    public int insertCommodity(Commodity commodity);

    /**
     * 修改商品信息
     * 
     * @param commodity 商品信息
     * @return 结果
     */
    public int updateCommodity(Commodity commodity);


    /**
     * 批量删除商品信息
     * 
     * @param cids 需要删除的商品信息主键集合
     * @return 结果
     */
    public int deleteCommodityByCids(Long[] cids);

    //统计不同商品类别数量
  public List<Commodity> category(Commodity commodity);

    public Commodity selectCategoryByGid(Long gid);

    //商品订单销售统计可视化
    List<SaleCountBo> salecount();

    //商品销售额统计可视化
    List<SaleCountBo> salegetcount();

    //商品进出货对比统计可视化
    List<SupplyAndDemandBO> SupplyAndDemand();


}
